package com.ewancle;

import org.jsoup.Connection;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;

import java.io.IOException;

public class JsoupTest {

    public static void main(String[] args) {
        // 手机浏览器的 User-Agent（以 Android 设备为例）
        String userAgent = "Mozilla/5.0 (Linux; Android 11; Pixel 5 Build/RQ2A.210305.006) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.77 Mobile Safari/537.36";

        // 模拟手机端访问的其他头部信息
        Connection.Response response = null;
        try {
            response = Jsoup.connect("https://waph.ahuyk.com/ahuxueshu/WeChatQq/webToWapAutoLogin?ucid=3762304&timestamp=1733147126&sign=fc78726da5587b393f7297e429843194") // 目标网站
                    .userAgent(userAgent) // 设置 User-Agent
                    .header("Accept-Language", "en-US,en;q=0.9") // 设置 Accept-Language
                    //.header("Accept-Encoding", "gzip, deflate, br") // 设置 Accept-Encoding
                    .header("Referer", "https://www.google.com") // 设置 Referer（模拟通过 Google 链接访问）
                    .header("Connection", "keep-alive") // 模拟持续连接
                    .header("Upgrade-Insecure-Requests", "1") // 模拟浏览器的请求升级
                    .timeout(10000) // 设置超时时间
                    .followRedirects(false) // 禁用自动重定向
                    .execute();

            // 判断响应状态码是否是 302 重定向
            if (response.statusCode() == 302) {
                // 获取重定向的目标 URL（通常在 "Location" 头部）
                String location = response.header("Location");
                System.out.println("Redirected to: " + location);

                // 可以选择手动跟随该 URL
                Document redirectedDoc = Jsoup.connect(location).get();
                System.out.println("Redirected Page Title: " + redirectedDoc.html());
            }
            // 获取页面的 HTML 内容
            Document doc = response.parse();
            //System.out.println(doc.title()); // 输出页面标题
            System.out.println(doc.html());

        } catch (IOException e) {
            e.printStackTrace();
        }
    }

}
